#ifndef PERSPECTIVE_CAMERA_H
#define PERSPECTIVE_CAMERA_H

#include "camera.h"

class PerspectiveCamera : public Camera
{
public:
	PerspectiveCamera(Scene* scene, Output* output, const Vector3& p, 
		const Vector3& d, const Vector3& u, float fov); 

	virtual void raytrace();

private:

	// Camera position, view direction and up vector
	Vector3 pos, dir, up;
	Vector3 tl, tr, bl, br;
	float fov;
};

#endif
